package com.complaintcase.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.complaintcase.common.annotation.Excel;
import com.complaintcase.common.core.domain.BaseEntity;

/**
 * 投诉案件信息对象 case_info
 * 
 * @author ruoyi
 * @date 2025-09-20
 */

@Data
public class CaseInfo extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     *
     */
    /** ID */
    @Excel(name = "序号", cellType = Excel.ColumnType.NUMERIC, width = 10)
    private Long id;

    /**
     * 添加本条数据的用户ID
     */
    private Long userId;
    /**
     * 添加本条数据的用户名称
     */
    private String addUserName;

    /**
     * 月份
     */
    @Excel(name = "月份", width = 10)
    private Long month;

    /**
     * 转入日期
     */
    @Excel(name = "转入日期", width = 10)
    private String transferIntoDate;

    /**
     * 转入部门
     */
    @Excel(name = "转入部门")
    private String transferIntoDept;

    /**
     * 转入方式
     */
    @Excel(name = "转入方式")
    private String transferMethod;

    /**
     * 工单编号
     */
    @Excel(name = "工单编号")
    private String caseNo;

    /**
     * 工单内容
     */
    @Excel(name = "工单内容")
    private String caseContent;

    /**
     * 地区
     */
    @Excel(name = "地区")
    private String region;

    /**
     * 识别信息
     */
    @Excel(name = "识别信息")
    private String userName;

    /**
     * 识别码
     */
    @Excel(name = "识别码",width = 15)
    private String userPhone;

    /**
     * 业务类型
     */
    @Excel(name = "业务类型")
    private String businessType;

    /**
     * 被诉录音日期
     */
    @Excel(name = "被诉录音日期")
    private String recordingDate;

    /**
     * 被诉录音时间
     */
    @Excel(name = "被诉录音时间")
    private String recordingTime;

    /**
     * 涉及部门
     */
    @Excel(name = "涉及部门")
    private String relationDept;

    /**
     * 涉及组别
     */
    @Excel(name = "涉及组别")
    private String relationTeam;

    /**
     * 工号姓名
     */
    @Excel(name = "工号")
    private String employeeId;
    @Excel(name = "姓名")
    private String employeeName;

    /**
     * 座席是否有问题
     */
    @Excel(name = "座席是否有问题", readConverterExp = "true=是,false=否")
    private Boolean serviceProblem;
    /**
     * 二部坐席是否有问题
     */
    @Excel(name = "二部坐席是否有问题", readConverterExp = "true=是,false=否")
    private Boolean twoServiceProblem;

    /**
     * 服务态度
     */
    @Excel(name = "服务态度", readConverterExp = "true=是,false=否")
    private Boolean serviceAttitude;

    /**
     * 服务技巧
     */
    @Excel(name = "服务技巧", readConverterExp = "true=是,false=否")
    private Boolean serviceSkills;

    /**
     * 业务解答
     */
    @Excel(name = "业务解答", readConverterExp = "true=是,false=否")
    private Boolean businessSolutions;

    /**
     * 流程执行
     */
    @Excel(name = "流程执行", readConverterExp = "true=是,false=否")
    private Boolean processExecution;


    /**
     * 整体接听情况描述
     */
    @Excel(name = "整体接听情况描述")
    private String answerDescription;

    /**
     * 具体问题及相关建议
     */
    @Excel(name = "具体问题及相关建议")
    private String issuesSuggestions;
    /**
     * 二部坐席问题展示
     */
    @Excel(name = "二部坐席问题展示")
    private String twoDescription;

    /**
     * 是否口径客户
     */
    @Excel(name = "是否口径客户", readConverterExp = "true=是,false=否")
    private Boolean isCaliberClient;

    /**
     * 口径名称
     */
    @Excel(name = "口径名称", readConverterExp = "true=是,false=否")
    private String caliberName;

    /**
     * 是否因业务迁怒
     */
    @Excel(name = "是否因业务迁怒", readConverterExp = "true=是,false=否")
    private Boolean isBusinessBlaming;

    /**
     * 是否因同一问题重复投诉
     */
    @Excel(name = "是否因同一问题重复投诉", readConverterExp = "true=是,false=否", width = 30)
    private Boolean isRepeatedComplaints;

    /**
     * 是否为贵宾客户
     */
    @Excel(name = "是否为贵宾客户", readConverterExp = "true=是,false=否")
    private Boolean isVipUser;

    /**
     * 是否外溢
     */
    @Excel(name = "是否外溢", readConverterExp = "true=是,false=否")
    private Boolean isOverflows;

    /**
     * 外溢描述
     */
    @Excel(name = "外溢描述")
    private String overflowDescription;

    /**
     * 是否赔偿
     */
    @Excel(name = "是否赔偿", readConverterExp = "true=是,false=否")
    private Boolean overflowCompensation;

    /**
     * 赔偿金额
     */
    @Excel(name = "赔偿金额")
    private String compensationMoney;

    /**
     * 其他客户特殊性描述
     */
    @Excel(name = "其他客户特殊性描述", width = 30)
    private String uniquenesDescription;

    /**
     * 接单人员
     */
    @Excel(name = "接单人员")
    private String orderTaker;

    /**
     * 转交本组人员处理信息
     */
    @Excel(name = "转交本组人员处理信息", width = 30)
    private String transferInformation;

    /**
     * 转交中心非本组人员处理情况描述
     */
    @Excel(name = "转交中心非本组人员处理情况描述", width = 30)
    private String transferCenter;

    /**
     * 转交其他中心处理情况描述
     */
    @Excel(name = "转交其他中心处理情况描述", width = 30)
    private String transferOutCenter;

    /**
     * 分行协助处理情况描述
     */
    @Excel(name = "分行协助处理情况描述",width = 30)
    private String branchAssistance;

    /**
     * 处理进度
     */
    @Excel(name = "处理进度")
    private String processingProgress;

    /**
     * 处理过程及结果
     */
    @Excel(name = "处理过程及结果")
    private String processResults;

    /**
     * 是否被表扬
     */
    @Excel(name = "是否被表扬", readConverterExp = "true=是,false=否")
    private Boolean isPraise;

    /**
     * 是否为优秀录音
     */
    @Excel(name = "是否为优秀录音", readConverterExp = "true=是,false=否")
    private Boolean isGoodRecording;

    /**
     * 服务态度类
     */
    @Excel(name = "服务态度类", readConverterExp = "true=是,false=否")
    private Boolean attitudeCategory;

    /**
     * 问题解决类
     */
    @Excel(name = "问题解决类", readConverterExp = "true=是,false=否")
    private Boolean solvingCategory;

    /**
     * 其他类
     */
    @Excel(name = "其他类", readConverterExp = "true=是,false=否")
    private Boolean otherCategory;

    /**
     * 回复人员工号
     */
    @Excel(name = "回复人员工号")
    private String replyStaffId;

    /**
     * 回复日期
     */
    @Excel(name = "回复日期", width = 30, dateFormat = "yyyy年MM月dd")
    private String replyDate;

    /**
     * 回复时间
     */
    @Excel(name = "回复时间")
    private String replyTime;

    /**
     * 录音及优点描述
     */
    @Excel(name = "录音及优点描述")
    private String advantageDescription;

}
